Public Class NLicencias
    Public Function cargarLicencia(ByVal licencia As Entidades.ELicencia) As Boolean
        'utiliza la capa de datos
        Dim oDatos As New Datos.DLicencias
        Dim band As Boolean
        Try
            If oDatos.buscarLicenciaPorArticulo(licencia) Then
                MsgBox("lo siento esa licencia ya existe, si desea puede modificarla o cargue una nueva")
                band = False
                Exit Try
            End If
            band = oDatos.cargarLicencia(licencia)
        Catch ex As Exception
            Throw New ArgumentException(ex.Message)
        Finally
            oDatos = Nothing
        End Try
        Return band
    End Function

    Public Function modificarLicencia(ByVal licenciavieja As Entidades.ELicencia, ByVal licencianueva As Entidades.ELicencia) As Boolean
        'utiliza la capa de datos
        Dim oDatos As New Datos.DLicencias
        Dim band As Boolean
        Try
            band = oDatos.modificarLicencia(licenciavieja, licencianueva)
        Catch ex As Exception
            Throw New ArgumentException(ex.Message)
        Finally
            oDatos = Nothing
        End Try
        Return band
    End Function

    Public Function modificarCapituloLic(ByVal licencia As Entidades.ELicencia, ByVal reemplazo As String) As Boolean
        'utiliza la capa de datos
        Dim oDatos As New Datos.DLicencias
        Dim band As Boolean
        Try
            band = oDatos.modificarCapituloLic(licencia, reemplazo)
        Catch ex As Exception
            Throw New ArgumentException(ex.Message)
        Finally
            oDatos = Nothing
        End Try
        Return band
    End Function

    Public Function modificarTituloLic(ByVal licencia As Entidades.ELicencia, ByVal reemplazo As String) As Boolean
        'utiliza la capa de datos
        Dim oDatos As New Datos.DLicencias
        Dim band As Boolean
        Try
            band = oDatos.modificarTituloLic(licencia, reemplazo)
        Catch ex As Exception
            Throw New ArgumentException(ex.Message)
        Finally
            oDatos = Nothing
        End Try
        Return band
    End Function

    Public Function buscarTituloDeLicencia() As List(Of Entidades.ELicencia)
        Dim oDatos As New Datos.DLicencias
        Try
            Return oDatos.buscarTituloDelicencia()
        Catch ex As Exception
            Throw New ArgumentException(ex.Message)
        Finally
            oDatos = Nothing
        End Try
    End Function

    Public Function buscarCapituloDeLicencia() As List(Of Entidades.ELicencia)
        Dim oDatos As New Datos.DLicencias
        Try
            Return oDatos.buscarCapituloDelicencia()
        Catch ex As Exception
            Throw New ArgumentException(ex.Message)
        Finally
            oDatos = Nothing
        End Try
    End Function

    'sobrecargado
    Public Function buscarLicencia(ByVal licencia As Entidades.ELicencia, ByVal cond As Boolean) As List(Of Entidades.ELicencia)
        'utiliza la capa de datos
        Dim oDatos As New Datos.DLicencias
        Try
            Return oDatos.buscarLicencia(licencia, cond)
        Catch ex As Exception
            Throw New ArgumentException(ex.Message)
        Finally
            oDatos = Nothing
        End Try
    End Function

    Public Function buscarLicencia(ByVal licencia As Entidades.ELicencia) As List(Of Entidades.ELicencia)
        'utiliza la capa de datos
        Dim oDatos As New Datos.DLicencias
        Try
            Return oDatos.buscarLicencia(licencia)
        Catch ex As Exception
            Throw New ArgumentException(ex.Message)
        Finally
            oDatos = Nothing
        End Try
    End Function

    'sobrecargado
    Public Function buscarLicencias(ByVal cond As Boolean) As List(Of Entidades.ELicencia)
        'utiliza la capa de datos
        Dim oDatos As New Datos.DLicencias
        Try
            Return oDatos.buscarLicencias(cond)
        Catch ex As Exception
            Throw New ArgumentException(ex.Message)
        Finally
            oDatos = Nothing
        End Try
    End Function

    'sobrecargado
    Public Function buscarLicencias() As List(Of Entidades.ELicencia)
        'utiliza la capa de datos
        Dim oDatos As New Datos.DLicencias
        Try
            Return oDatos.buscarLicencias()
        Catch ex As Exception
            Throw New ArgumentException(ex.Message)
        Finally
            oDatos = Nothing
        End Try
    End Function
End Class
